package org.robotlegs.xxl.core 
{
	import org.osflash.signals.ISignal;
	
	/**
	 * ...
	 * @author XXL
	 */
	public interface ISignalCommandMap 
	{
		function hasSignalCommand(signalClass:Class, commandClass:Class):Boolean;
		/**
		 * 映射signal和command,映射的signal会以默认名的形式注册到ISignalMap中
		 * @param	signalClass
		 * @param	commandClass
		 * @param	oneShot
		 * @return
		 */
		function mapSignalClass(signalClass:Class, commandClass:Class, oneShot:Boolean = false):ISignal;
		
		function unmapSignalClass(signalClass:Class, commandClass:Class):void;
		
		function unmapSignals():void;
	}
	
}